# 18.4 创建其他网页
# 创建两个显示数据的网页，其中一个列出所有主题，另一个显示特定主题的所有条目
# 创建父模板，其他模板继承父模板

# 18.4.1 模板继承
# 父模板包含所有网页的通用元素

# 在 应用程序目录(learning_logs)\templates\应用程序名(learning_logs)新建模板base.html
# 通用元素为超链接到应用程序主页的顶端标题

# html文件中
# a标签表示超链接
#     <a href=链接的地址(字符串)
#         target=在哪个网页进行跳转(字符串): _self当前页面; _blank打开新页面来进行跳转
#         class=样式类名(字符串): 导入样式表中的类用于设置样式; 如需为一个元素规定多个类，用空格分隔类名;
#             navbar-brand用于站点名称，字号更大>
#     带有超链接的内容</a>
# 显示带有超链接的内容

# {%和%}间的内容为模板标签，生成要在网页中显示的信息
# {% url "命名空间:URL模式名" %}
# 生成与命名空间下的该URL模式匹配的URL
# 使用模板标签生成URL容易保持链接最新

# {% extends "父模板路径" %}
# 说明子模板继承自哪个父模板

# {% block 块名 %}{% endblock 块名 %}
# 在父模板中定义能够被子模版覆盖的块

# {% block 块名 %}子模板的内容{% endblock 块名 %}
# 在子模板中实现父模板中占位块的内容

# 修改子模板
# 修改 应用程序目录(learning_logs)\templates\应用程序名(learning_logs)\index.html

# 大型项目通常进行多级继承，提高效率

# 18.4.2 显示所有主题的页面
# 创建显示全部主题的网页

# 在 应用程序目录(learning_logs)\urls.py的列表urlpatterns添加显示全部主题的网页的URL(topics/)
# 在 应用程序目录(learning_logs)\views.py编写视图函数(topics())
# 在 应用程序目录(learning_logs)\templates\应用程序名(learning_logs)创建模板topics.html

# html文件中
# <></>-<></>
# 在两个内容间添加横杠

# ul标签与li标签一起使用，创建竖排带圆点无序列表
#     <ul class=样式类名(字符串): 导入样式表中的类用于设置样式; 如需为一个元素规定多个类，用空格分隔类名;
#             nav navbar-nav设置ul为导航条组件内的列表元素; navbar-right设置导航条内元素向右对齐>
#         <li>元素1</li>
#         ···
#         <li>元素i</li>
#         ···
#         <li>元素n</li>
#     </ul>
# 显示一个无序列表，默认样式为竖排带圆点：
# ·元素1
# ···
# ·元素i
# ···
# ·元素n

# {{和}}用于打印变量
#     {{ 变量名 }}
#  显示变量的值

# 模板标签：
# {% for 循环变量 in 集合 %}
#     循环体
# {% endfor %}
# for循环，循环变量依次取集合中的一个元素，执行循环体，直到获取集合最后一个元素并执行循环体，结束语句块

# {% for 循环变量 in 集合 %}
#     循环体
# {% empty %}
#     处理方法
# {% endfor %}
# for循环，循环变量依次取集合中的一个元素，执行循环体，直到获取集合最后一个元素并执行循环体，结束语句块；
#     如果集合为空，执行处理方法语句，结束语句块

# 修改 应用程序目录(learning_logs)\templates\应用程序名(learning_logs)\base.html
# 添加超链接到显示所有主题的页面的顶端标题及两个标题之间的横杠

# 18.4.3 显示特定主题的页面
# 创建显示特定主题全部条目的网页

# 在 应用程序目录(learning_logs)\urls.py的列表urlpatterns添加显示全部主题的网页的URL(topics/(topic_id)/)
# 在 应用程序目录(learning_logs)\views.py编写视图函数(topic())
# 在 应用程序目录(learning_logs)\templates\应用程序名(learning_logs)创建模板topic.html

# 模板标签：
# |表示模板过滤器，对模板变量的值进行修改
#     存储时间的变量()|date:"M d, Y H:i"
#     将时间修改为这样的格式：月 日, 年 时(24小时制):分
#     存储文本的变量()|linebreaks
#     将包含换行符的文本转换为一个连续文本块，防止以换行符为界分为多个文本块

# 修改显示所有主题的网页，使每个主题带有超链接到显示特定主题全部条目的网页
# 修改 应用程序目录(learning_logs)\templates\应用程序名(learning_logs)创建模板topics.html

# 模板标签：
# {% url '命名空间:URL模式' 实参 %}
# 生成与命名空间下的该URL模式匹配的URL，用实参给URL的参数赋值
